
// 图片上传默认属性
export const DEFAULT_MODAL_WIDTH = '60%'

// 表单默认属性
export const FORM_ITEM_LAYOUT = {
  labelCol: {
    md: { span: 6 },
  },
  wrapperCol: {
    md: { span: 12 },
  },
};

//别名的正则表达式
export const DEFAULT_NICKNAME_RULE = /^[0-9a-zA-Z_]{1,}$/
export const DEFAULT_NICKNAME_MESSAGE = '只允许输入数字，下划线和字母'

export function issetParam(param: any) {
  if (param === null || param === undefined) {
    return false
  }
  return true
}

// 获取对象某个属性
export function getObjAttr(obj: {}, fields: string) {
  if (issetParam(obj[fields])) {
    return obj[fields]
  }
  return ''
}

// 从common中获取fields
export function getTreeData(common: {}, fields = 'treeData') {
  let treeData = []
  if (issetParam(common[fields])) {
    treeData = common[fields]
  }
  // console.log('get tree data res', treeData)
  return treeData
}

// 从common中获取fields
export function getSelectOption(common: {}, fields = 'selectOption') {
  let arr = [{ 'key': 1, 'text': 'a' }]
  if (issetParam(common[fields])) {
    arr = common[fields]
  }

  // const o = <Select.Option value='1'>1</Select.Option>

  console.log('get select option res ', arr)
  return true
}

// 获取最近的一个上传文件
export function getLastUploadFile(fileList: any): any[] {
  if (fileList.length > 0) {
    const file = fileList[fileList.length - 1]
    // 刚上传
    if (issetParam(file) && issetParam(file.response)) {
      console.log("file is ", file.response.data)
      return [file.response.data]
    }
    // 已存在
    if (issetParam(file)) {
      console.log("file is exist ", file)
      return [file]
    }
  }
  console.log("file is empty")
  return []
}

// 获取文件
export function buildFileByUrl(url: string): [] {
  if (!issetParam(url) || url.length < 10) {
    // @ts-ignore
    return []
  }
  const file = {
    uid: '-1',
    name: url.split('/').pop(),
    status: 'done',
    url: url,
    thumbUrl: url,
  }
  // @ts-ignore
  return [file]
}

//获取文件数组
export function buildFileByFile_json(file_json: any): [] {

  if (!issetParam(file_json)) {
    // @ts-ignore
    return []
  }
  let url = '';
  if (file_json.length > 0) {
    url = file_json[0].file_url;
  }
  const file = {
    uid: '-1',
    name: url.split('/').pop(),
    status: 'done',
    url: url,
    thumbUrl: url,
  }
  // @ts-ignore
  return [file]
}

// 是否在数据表单中显示文件上传按钮
export function showUploadBtn(isUpdate: boolean, picture: any[], defaultPicture: [], uploadChanged: boolean) {

  // 新建根据picture长度判断
  if (isUpdate === false) {
    return picture.length === 0
  }
  // 编辑
  if (isUpdate === true) {
    // 如果picture有值，则不显示
    if (picture.length > 0) {
      return false
    }
    // 如果picture值为0， 且有图片, 则不显示
    if (picture.length === 0 && defaultPicture.length > 0 && !uploadChanged) {
      return false
    }
    // 默认显示
    return true;
  }
  // 默认显示
  return true;
}



